package com.zy.kotlinmvplib

import com.zy.kotlinbaselibrary.base.mvp.BaseModel
import com.zy.kotlinbaselibrary.base.mvp.BasePresenter
import com.zy.kotlinbaselibrary.base.mvp.BaseView
import com.zy.kotlinbaselibrary.rx.Optional
import io.reactivex.Observable

interface MainContract {
    interface View: BaseView{
        abstract fun showResult()
        abstract fun show(result: String)
    }

    interface Model: BaseModel{
        abstract fun getData(): Observable<Optional<bean>>
        abstract fun getData1(): Observable<Optional<bean>>
    }
    abstract class Presenter: BasePresenter<View, Model>(){
        abstract fun goData()
        abstract fun goData1()
    }


}